/**
 * 技术分类项接口
 */
export interface TechnologyItem {
  /** 技术分类ID */
  id: string;
  /** 技术分类名称 */  
  name: string;
  /** 技术分类编码 */
  code?: string;
  /** 父级分类ID */
  parentId?: string;
  /** 分类级别 */
  level?: number;
  /** 排序号 */
  sort?: number;
  /** 描述 */
  description?: string;
}

/**
 * 趋势查询参数接口
 */
export interface TrendQueryParams {
  /** 选中的技术分类ID列表 */
  selectedTechnologies: string[];
  /** 开始年份 */
  startYear: number;
  /** 结束年份 */
  endYear: number;
  /** 图表类型 */
  chartType: 'line' | 'bar' | 'mixed';
}

/**
 * 趋势查询请求参数接口
 */
export interface TrendQueryRequest {
  /** 技术分类ID列表 */
  technologyIds: string[];
  /** 开始年份 */
  startYear: number;
  /** 结束年份 */
  endYear: number;
}

/**
 * 年度数据接口
 */
export interface YearData {
  /** 年份 */
  year: number;
  /** 数量 */
  count: number;
  /** 环比增长率 */
  growthRate?: number;
}

/**
 * 技术趋势数据接口
 */
export interface TechnologyTrendData {
  /** 技术分类ID */
  technologyId: string;
  /** 技术分类名称 */
  technologyName: string;
  /** 总数量 */
  totalCount: number;
  /** 年度数据列表 */
  yearDataList: YearData[];
}

/**
 * 查询参数视图对象
 */
export interface QueryParams {
  /** 技术分类ID列表 */
  technologyIds: string[];
  /** 开始年份 */
  startYear: number;
  /** 结束年份 */
  endYear: number;
}

/**
 * 统计信息接口
 */
export interface Statistics {
  /** 总专利数量 */
  totalPatentCount: number;
  /** 技术分类数量 */
  technologyCount: number;
  /** 年份跨度 */
  yearSpan: number;
  /** 最大年度申请量 */
  maxYearlyCount: number;
  /** 平均年度申请量 */
  avgYearlyCount: number;
}

/**
 * 趋势查询结果接口
 */
export interface TrendQueryResult {
  /** 趋势数据列表 */
  trendDataList: TechnologyTrendData[];
  /** 查询参数 */
  queryParams: QueryParams;
  /** 统计信息 */
  statistics: Statistics;
}

/**
 * 图表系列数据接口
 */
export interface ChartSeries {
  /** 系列名称 */
  name: string;
  /** 图表类型 */
  type: 'line' | 'bar';
  /** 数据 */
  data: number[];
  /** 是否平滑 */
  smooth?: boolean;
  /** 样式配置 */
  itemStyle?: {
    color: string;
  };
  /** 线条样式 */
  lineStyle?: {
    width: number;
  };
}
